#include "adc_fun.h"
#include "filter.h"
#include "LBG_Arctan_FOC.h"

uint16_t adc_dma_data[2] = {0};
uint16_t adc_inj_data[3] = {0};
F_adc_data_t F_adc_data;
uint8_t off_set_flag = 0 ;
uint16_t count_offset = 0;
float sent_to_test[3] = {0};
float adc_inj_offset[3] = {0};

void updata_adc_val(void){
	
	if(count_offset<OFFSET_LEN&& off_set_flag == 0){
		adc_inj_offset[ADC_ACH]+=adc_inj_data[ADC_ACH];
		adc_inj_offset[ADC_BCH]+=adc_inj_data[ADC_BCH];
		adc_inj_offset[ADC_CCH]+=adc_inj_data[ADC_CCH];
	}
	else if (count_offset == OFFSET_LEN&& off_set_flag == 0){
		adc_inj_offset[ADC_ACH]/=(OFFSET_LEN);
		adc_inj_offset[ADC_BCH]/=(OFFSET_LEN);
	    adc_inj_offset[ADC_CCH]/=(OFFSET_LEN);
		off_set_flag = 1;
	}
	else if(off_set_flag == 1){
//		switch (rt_Simulink_Struct.cal_sector){
//			case SECTOR_4:
//			case SECTOR_5:{
//				/* Current on Phase C is not detectable     */
//				/* Ia = PhaseAOffset - ADC converted value) */
//				F_adc_data._FA_adc = adc_inj_offset[ADC_ACH] - adc_inj_data[ADC_ACH];
//				/* Ib = PhaseBOffset - ADC converted value) */
//				F_adc_data._FB_adc = adc_inj_offset[ADC_BCH] - adc_inj_data[ADC_BCH];
//				/* Ic = - Ia - Ib */
//				F_adc_data._FC_adc = -F_adc_data._FA_adc - F_adc_data._FB_adc;
//				break;
//			}
//			case SECTOR_6:
//			case SECTOR_1:{
//				/* Current on Phase A is not detectable     */
//				/* Ib = PhaseBOffset - ADC converted value) */
//				F_adc_data._FB_adc = adc_inj_offset[ADC_BCH] - adc_inj_data[ADC_BCH];
//				/* Ic = PhaseCOffset - ADC converted value) */
//				F_adc_data._FC_adc = adc_inj_offset[ADC_CCH] - adc_inj_data[ADC_CCH];
//				/* Ia = - Ib - Ic */
//				F_adc_data._FA_adc = -F_adc_data._FB_adc - F_adc_data._FC_adc;
//				break;
//			}
//			case SECTOR_2:
//			case SECTOR_3:{
//				/* Current on Phase B is not detectable     */
//				/* Ia = PhaseAOffset - ADC converted value) */
//				F_adc_data._FA_adc = adc_inj_offset[ADC_ACH] - adc_inj_data[ADC_ACH];
//				/* Ic = PhaseCOffset - ADC converted value) */
//				F_adc_data._FC_adc = adc_inj_offset[ADC_CCH] - adc_inj_data[ADC_CCH];
//				/* Ib = - Ia - Ic */
//				F_adc_data._FB_adc = -F_adc_data._FA_adc -F_adc_data._FC_adc;
//				break;
//			}
//			default:
//				break;
//		}
		
		
	//F_adc_data._FA_adc = -adc_inj_offset[ADC_ACH]+adc_inj_data[ADC_ACH];
	F_adc_data._FB_adc = -adc_inj_offset[ADC_BCH]+adc_inj_data[ADC_BCH];
	F_adc_data._FC_adc = -adc_inj_offset[ADC_CCH]+adc_inj_data[ADC_CCH];
	F_adc_data._FA_adc = -adc_inj_offset[ADC_ACH]+adc_inj_data[ADC_ACH];
	F_adc_data._Pow_adc = adc_dma_data[0];
	}
	count_offset ++;
}



